#ifndef POP_WINDOW_MANAGER_H
#define POP_WINDOW_MANAGER_H

#include <QObject>

#include "device_information.h"



class PopWindowManager : public QObject
{
    Q_OBJECT
private:
    int m_widCnt;
    QList<DeviceInformation> m_infoList;
    explicit PopWindowManager();
    void initConnection();
    void showPopWindow(const DeviceInformation &);
    bool findPPD(bool needUpdatePpdMap,
                 const QString &vendor,
                 const QString &model,
                 QString &accuratelyMatchPPD,
                 QStringList &fuzzyMatchPPDlis);

    bool installPackage(const DeviceInformation &);
    void getDevInfo(DeviceInformation &);
    void modifyInfoList(QString &);
    void showNext();
public:
    static PopWindowManager *getInstance();
    ~PopWindowManager();
signals:
    void manualInstallShowRequest(DeviceInformation &);
    void deviceViewShowRequest(QString &);
    void showNextRequest();
};




#endif // POP_WINDOW_MANAGER_H